/**
 * Importação das bibliotecas necessárias para a implementação da classe.
 */
import java.util.ArrayList;
import java.util.Date;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * 
 * Universidade de Brasília - Gama
 * Sistema de Análise de Investimentos de Bolsa de Valores - Projeto de Técnicas de Programação
 * @author Filipe Barbosa de Almeida - 09/0006097
 * @author Gabriela Matias Navarro - 09/0006526
 * @author Renato Guibson Girardi - 09/0013204
 */
public class Operacao {
    
    /**
     * Declaração dos Atributos da Classe Operacao
     */
    private String tipo;
    private int quantidade;
    private Date data;
    private double valorUni;
    private ArrayList variacao;
    private double encargos;
    /**
     * Método get para o atributo data
     * @return data
     */
    public Date getData() {
        return data;
    }
    /**
     * Método set para o atributo set
     * @param data
     */
    public void setData(Date data) {
        this.data = data;
    }
    /**
     * Método get para o atributo encargos
     * @return encargos
     */
    public double getEncargos() {
        return encargos;
    }
    /**
     * Método set para o atributo encargos
     * @param encargos
     */
    public void setEncargos(double encargos) {
        this.encargos = encargos;
    }
    /**
     * Método get para o atributo quantidade
     * @return quantidade
     */
    public int getQuantidade() {
        return quantidade;
    }
    /**
     * Método set para o atributo quantidade
     * @param quantidade
     */
    public void setQuantidade(int quantidade) {
        this.quantidade = quantidade;
    }
    /**
     * Método get para o atributo tipo
     * @return tipo
     */
    public String getTipo() {
        return tipo;
    }
    /**
     * Método set para o atributo tipo
     * @param tipo
     */
    public void setTipo(String tipo) {
        this.tipo = tipo;
    }
    /**
     * Método get para o atributo valorUni
     * @return valorUni
     */
    public double getValorUni() {
        return valorUni;
    }
    /**
     * Método set para o atributo valorUni
     * @param valorUni
     */
    public void setValorUni(double valorUni) {
        this.valorUni = valorUni;
    }
    /**
     * Método get para o atributo variacao
     * @return variacao
     */
    public ArrayList getVariacao() {
        return variacao;
    }
    /**
     * Método set para o atributo variacao
     * @param variacao
     */
    public void setVariacao(ArrayList variacao) {
        this.variacao = variacao;
    }

    /**
     * Metodo Construtor vazio
     */
    public Operacao(){

    }

    /**
     * metodo Construtor para Operacao
     * @param tipo
     * @param quantidade
     * @param data
     * @param valorUni
     * @param variacao
     * @param encargos
     */
    public Operacao(String tipo, int quantidade, Date data, double valorUni, ArrayList variacao, double encargos) {
        this.tipo = tipo;
        this.quantidade = quantidade;
        this.data = data;
        this.valorUni = valorUni;
        this.variacao = variacao;
        this.encargos = encargos;
    }

    
}
